package com.pmsystem.dao;

import com.pmsystem.pojo.SecurityMan;
import com.pmsystem.pojo.SecurityMis;
import com.pmsystem.pojo.SecurityMisExample;
import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Param;

public interface SecurityMisMapper {
    long countByExample(SecurityMisExample example);

    int deleteByExample(SecurityMisExample example);

    int deleteByPrimaryKey(Integer securityMisId);

    int insert(SecurityMis record);

    int insertSelective(SecurityMis record);

    List<SecurityMis> selectByExample(SecurityMisExample example);

    SecurityMis selectByPrimaryKey(Integer securityMisId);

    int updateByExampleSelective(@Param("record") SecurityMis record, @Param("example") SecurityMisExample example);

    int updateByExample(@Param("record") SecurityMis record, @Param("example") SecurityMisExample example);

    int updateByPrimaryKeySelective(SecurityMis record);

    int updateByPrimaryKey(SecurityMis record);
    
    /**  
	 * <p>Title: selectAllMisCount</p >  
	 * <p>Description:查询安保人员数据总条数</p >  
	 * @author 魏家洛
	 * @return  
	 */  
	int selectMisCount(@Param("condition")String condition,@Param("startTime")String startTime,@Param("endTime")String endTime);
	/**  
	 * <p>Title: selectMisPage</p >  
	 * <p>Description: 通过开始索引和数量查询安保人员对应数据</p >  
	 * @author 魏家洛
	 * @param start
	 * @param pageSize
	 * @return  
	 */  
	List<Map<String, Object>> selectMisPage(@Param("start") Integer start,@Param("pageSize") Integer pageSize,
			@Param("condition")String condition,@Param("startTime")String startTime,@Param("endTime")String endTime);
	/**  
	 * <p>Title: deleteMisById</p >  
	 * <p>Description: 通过id删除安保人员数据</p >  
	 * @author 魏家洛
	 * @param id
	 * @return  
	 */  
	int deleteMisById(Integer id);

	/**  
	 * <p>Title: selectMisById</p >  
	 * <p>Description:通过安保人员id查找安保人员数据</p >  
	 * @author 魏家洛
	 * @param id
	 * @return  
	 */  
	SecurityMis selectMisById(Integer id);

	/**  
	 * <p>Title: updateMisByMis</p >  
	 * <p>Description:更新安保人员信息 </p >  
	 * @author 魏家洛
	 * @param securityMis
	 * @return  
	 */  
	int updateMisByMis(SecurityMis securityMis);

	/**  
	 * <p>Title: addMis</p >  
	 * <p>Description:添加安保人员数据 </p >  
	 * @author 魏家洛
	 * @param securityMis
	 * @return  
	 */  
	int addMis(SecurityMis securityMis);

	/**  
	 * <p>Title: getProgress</p >  
	 * <p>Description: 获取当天任务进度</p >  
	 * @author 魏家洛
	 * @param currentDate
	 * @return  
	 */  
	Float getProgress(@Param("currentDate")String currentDate);
}